package com.xiaozheng.dao.impl;

import com.xiaozheng.domain.User;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;

import java.util.List;

/**
 * @Package: com.xiaozheng.dao.impl
 * @ClassName: UserDaoImpl
 * @Author: 小政同学    QQ:xiaozheng666888@qq.com
 * @CreateTime: 2020/8/26 23:44
 * @What_is_this_file_for: 这个文件是用来做什么的?
 * @Description: 描述
 */
public class UserDaoImpl  {/*implements UserDao*/
    /**
     * 查询所有数据
     *
     * @return
     */
    private SqlSessionFactory factory;

    /**
     * 重写默认构造函数，接收工厂
     * @param factory
     */
    public UserDaoImpl(SqlSessionFactory factory) {
        this.factory = factory;
    }
    //@Override
    public List<User> findAll() {
        //1.使用工厂创建SQL Session对象
        SqlSession sqlSession = factory.openSession();
        //2.使用session执行查询所有方法
        /**
         * //<mapper namespace="com.xiaozheng.dao.UserDao">中的namespace +
         * <select id = "findAll" resultType="com.xiaozheng.domain.User">的id
         */
        List<User> list = sqlSession.selectList("com.xiaozheng.dao.UserDao.findAll");
        //3.返回查询结果集
        return list;
    }
}
